const path = require('path')
const orderModel = require(path.join(__dirname,"../model/orderModel"))
const alipay = require(path.join(__dirname,"../utils/alipay"))

/**
 * 支付订单
 * 
 * 跳转到支付成功页面
 */
exports.payOrder = (req,res,next) => {
    // 获取订单号
    const order_number = req.query.order_number

    // 获取要支付的订单信息
    orderModel.single(order_number).then(order=>{
        // 获取支付链接
        const payURL = alipay.getPayURL(order)

        // 重定向到支付链接
        res.redirect(payURL)
    }).catch(err=>next(err))
}

/**
 * 支付成功的回调
 */
exports.success = (req,res,next) => {
    // 更改订单的状态为已支付
    orderModel.update({
        order_number:req.query.out_trade_no, // 订单编号
        pay_status:1, // 支付状态，支持 0: 未支付 / 1: 已支付
        send_status:0, // 发货状态，支持 0: 未发货 / 1: 已发货
        trade_no:req.query.trade_no, // 支付宝流水号
        express_address:"段子黄 深圳市宝安区留仙二路中粮商务公园3栋17楼 13812345678"
    }).then(()=>{
        // 渲染订单列表页面
        res.render(path.join(__dirname,"../views/paySuccess"))
    })
}